-- stack: in -- format: 8 (HyperCard 1) -- flags: 0x1000 (none) -- protect password hash: 0 -- maximum user level: 5 (scripting) -- window: Rect(x1=0, y1=0, x2=0, y2=0) -- screen: Rect(x1=0, y1=0, x2=0, y2=0) -- card dimensions: w=0 h=0 -- scroll: x=0 y=0 -- background count: 1 -- first background id: 2640 -- card count: 3 -- first card id: 4065 -- list block id: 5013 -- print block id: 3337 -- font table block id: 0 -- style table block id: 0 -- free block count: 3 -- free size: 13376 bytes -- total size: 32768 bytes -- stack block size: 6656 bytes -- created by hypercard version: 0x01228000 -- compacted by hypercard version: 0x01228000 -- modified by hypercard version: 0x01228000 -- opened by hypercard version: 0x01228000 -- patterns[0]: 0x0000000000000000 -- patterns[1]: 0x0000220000002200 -- patterns[2]: 0x8800220088002200 -- patterns[3]: 0xCC003300CC003300 -- patterns[4]: 0xCC883322CC883322 -- patterns[5]: 0xEE88BB22EE88BB22 -- patterns[6]: 0xEECCBB33EECCBB33 -- patterns[7]: 0xFFCCFF33FFCCFF33 -- patterns[8]: 0xFFEEFFBBFFEEFFBB -- patterns[9]: 0xFFFFFFBBFFFFFFBB -- patterns[10]: 0x8010022001084004 -- patterns[11]: 0xFFFFFFFFFFFFFFFF -- patterns[12]: 0x8822882288228822 -- patterns[13]: 0x1122448811224488 -- patterns[14]: 0xC4800C6843023026 -- patterns[15]: 0xB130031BD8C00C8D -- patterns[16]: 0xAA00AA00AA00AA00 -- patterns[17]: 0x8822552288225522 -- patterns[18]: 0x8844221188442211 -- patterns[19]: 0x77DD77DD77DD77DD -- patterns[20]: 0x8000000000000000 -- patterns[21]: 0xAA55AA55AA55AA55 -- patterns[22]: 0x038448300C020101 -- patterns[23]: 0x8244394482010101 -- patterns[24]: 0x8814224188412214 -- patterns[25]: 0x8080413E080814E3 -- patterns[26]: 0x22048C7422179810 -- patterns[27]: 0xBE808808EB088880 -- patterns[28]: 0x25C8328964244C92 -- patterns[29]: 0xA29C41BE2AC914EB -- patterns[30]: 0x40A00000040A0000 -- patterns[31]: 0x8040200002040800 -- patterns[32]: 0xAA00800088008000 -- patterns[33]: 0xFF80808080808080 -- patterns[34]: 0x081C22C180010204 -- patterns[35]: 0xFF808080FF080808 -- patterns[36]: 0xF87422478F172271 -- patterns[37]: 0xBF00BFBFB0B0B0B0 -- patterns[38]: 0xFF7FBE5DA2418000 -- patterns[39]: 0xFAF5FAF5A050A050 -- checksum: 0x0 ----- HyperTalk script ----- •••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••• --≥ --≥ --≥ --≥ © 1990, Apple Computer, Inc. --≥ --≥ DEC LanWORKS Product Guide --≥ Interface For Animation, Demos, and Related Data --≥ 4/23/90 --≥ --∆ J.W. Swartz --∆ TBD Consulting Group --∆ (415) 462-6983 --∆ --∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆∆ --∆ --∆ --∆ --∆ on openStack set lockscreen to true hide message hide menuBar titleBar hide unlock screen with dissolve end openStack on closeStack show menuBar titleBar show end closeStack on startUp getHomeInfo pass startUp -- to a startUp XCMD, if present end startUp on resume getHomeInfo pass resume -- to a resume XCMD, if present end resume on getHomeInfo global stacks,applications,documents,userName set lockScreen to true set lockMessages to true push this card go to card "User Preferences" of stack "Home" put card field "User Name" into userName set userLevel to card field "User Level" set powerKeys to the hilite of button "Power Keys" set textArrows to the hilite of button "Text Arrows" set blindTyping to the hilite of button "Blind Typing" put field "paths" of card "stacks" into stacks put field "paths" of card "applications" into applications put field "paths" of card "documents" into documents pop card set lockScreen to false set lockMessages to false end getHomeInfo function SelectionAndHiliter --∆ To get the number of a line clicked in a field and then highlight --∆ the selected line, needs a button named the same as the field --∆ name with "hiliter" appended. --∆ First, check if the field is a scrolling field get the style of the target if it is "scrolling" then put the scroll of the target into scrollLocation else put "0" into scrollLocation end if --∆ Next, get the vertical location of the field and adjust --∆ for wideMargins (causes all lines to drop 4 pixels) put item 2 of rect of target into verticalLocation get wideMargins of the target if it is true then add 4 to verticalLocation --∆ Compute the line number get item 2 of the clickloc - verticalLocation + ScrollLocation put 1 + it div the textHeight of target into lineNumber --∆ Now, get the name of the hiliter button get the short name of the target put it into FieldName --∆ Calculate where to place hilite button put 1 + (verticalLocation + lineNumber * textHeight of target - ScrollLocation) - textHeight of target div 2 into adjustedVerticalLoc show cd button (FieldName & "hiliter") at item 1 of loc of cd button (FieldName & "hiliter"),adjustedVerticalLoc --∆ return the line number to calling handler return lineNumber end SelectionAndHiliter on openTheCD CDopen end openTheCD on stopTheCD repeat forever if the mouseClick is true or the mouse is down then CDstop exit repeat end if end repeat end stopTheCD